package com.suny.sf_server.mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Mapper;
import com.suny.Pen.domain.Pen;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.suny.Pen.dto.PenQueryDTO;
import com.suny.Pen.vo.PenVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
* @author sun
* @description 针对表【pen(圈舍管理表)】的数据库操作Mapper
* @createDate 2024-12-27 10:45:10
* @Entity domain.Pen.suny.com.Pen
*/
@Mapper
public interface PenMapper extends BaseMapper<Pen> {
    /**
     * 分页查询带关联信息的圈舍列表
     */
    IPage<PenVO> selectPenVOPage(IPage<Pen> page);

    /**
     * 查询指定牧场下的可用圈舍列表
     */
    List<PenVO> selectEnablePensByFarmId(@Param("farmId") Integer farmId);

    /**
     * 条件查询圈舍列表
     */
    IPage<PenVO> selectPenVOPageByCondition(
        @Param("page") IPage<Pen> page, 
        @Param("query") PenQueryDTO query
    );
}




